iT邦幫忙

2024 iThome 鐵人賽

DAY 16
0
Modern Web

Backend Developer的學習Roadmap系列 第 16

Day 16 Testing - Functional Testing

  • 分享至 

  • xImage
  •  

Functional Testing 是一種軟體測試方法,根據功能需求/規格驗證軟體系統的每個功能是否按照需求規格進行工作。這種測試集中於軟體或是應用程式的外部行為,而非內部結構或程式實現。

黑箱測試

Functional Testing通常被稱為黑箱測試,因為測試者並不關心內部程式結構或系統架構,只關注輸入和輸出之間的關係。因此被稱為黑箱測試,因為看不到裡面,相對的也有白箱測試XD
Functional Testing 是黑箱測試的一種具體應用形式,但黑箱測試不一定是Functional Testing,這邊不要搞混囉XD

那麼,我們主要想測試什麼東西呢?

想測的目標

  • Mainline functions: Testing the main functions of an application
  • Basic Usability: It involves basic usability testing of the system. It checks whether a user can freely navigate through the screens without any difficulties.
  • Accessibility: Checks the accessibility of the system for the user
  • Error Conditions: Usage of testing techniques to check for error conditions. It checks whether suitable error messages are displayed.

我們知道了想測試的東西後,來了解測試的流程吧

測試Flow

  • 了解功能需求
  • 根據需求確認測試輸入或測試數據
  • 使用選定的測試輸入值計算預期結果
  • 執行測試案例
  • 比較實際結果和計算出的預期結果
    因為我們看不到程式碼,我們只能透過規格來知道預期的結果,例如規格如果說這function會將兩個input相加後返回,那麼我們輸入1 and 1,一定要返回2,不然就是不符合規格。

Functional Testing Types

那麼那些測試類型屬於functional testing呢?

  • Unit testing
  • Smoke testing
  • User Acceptance
  • Integration Testing
  • Regression testing
  • Localization
  • Globalization
  • Interoperability

只要扯到規格的全部都是functional testing,而效能、可靠性、可擴展性和其他非功能方面的則不是
例如壓力測試呀performance testing都不屬於functional testing。

總結

今天我們知道了functional testing以及non-functional testing的意義,因為它們能夠確保軟體系統在實際使用中按照設計來運行,並且從測試中幫助發現並修復功能性缺陷。

迷之聲: 只要我們有寫程式,記得要寫測試喔~

reference

https://www.guru99.com/functional-testing.html


上一篇
Day 15 OWASP Top Ten
下一篇
Day 17 Testing types
系列文
Backend Developer的學習Roadmap30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言